//
//  ZZCBaseSelectViewController.h
//  ZZC-Finance
//
//  Created by mac on 2017/5/22.
//  Copyright © 2017年 mac. All rights reserved.
//

#import <UIKit/UIKit.h>

@protocol ZZCBaseSelectControllerDataSource,ZZCBaseSelectControllerDelegate;

@interface ZZCBaseSelectController : UIViewController

@property (nonatomic, weak) id<ZZCBaseSelectControllerDataSource> datasouce;
@property (nonatomic, weak) id<ZZCBaseSelectControllerDelegate> delegate;
- (void)reloadData;

@end

@protocol ZZCBaseSelectControllerDataSource <NSObject>
@required
// pageNumber
- (NSInteger)numberOfPageInZZCBaseSelectController:(ZZCBaseSelectController *)baseSelectController;
// index -> UIViewController
- (UIViewController *)baseSelectController:(ZZCBaseSelectController *)baseSelectController controllerAtIndex:(NSInteger)index;
// index -> Title
- (NSString *)baseSelectController:(ZZCBaseSelectController *)baseSelectController titleAtIndex:(NSInteger)index;

@optional
// textNomalColor
- (UIColor *)titleNomalColorInZZCBaseSelectController:(ZZCBaseSelectController *)baseSelectController;
// textSelectedColor
- (UIColor *)titleSelectedColorInZZCBaseSelectController:(ZZCBaseSelectController *)baseSelectController;
// lineColor
- (UIColor *)lineColorInZZCBaseSelectController:(ZZCBaseSelectController *)baseSelectController;
// titleFont
- (CGFloat)titleFontInZZCBaseSelectController:(ZZCBaseSelectController *)baseSelectController;
@end

@protocol ZZCBaseSelectControllerDelegate <NSObject>
@optional
// selctedIndex
- (void)baseSelectController:(ZZCBaseSelectController *)baseSelectController selectedIndex:(NSInteger)index;
// selectedController
- (void)baseSelectController:(ZZCBaseSelectController *)baseSelectController selectedController:(UIViewController *)controller;
// selectedTitle
- (void)baseSelectController:(ZZCBaseSelectController *)baseSelectController selectedTitle:(NSString *)title;

@end
